// pages/login/login.js
const request = require('../../utils/request')

Page({
  data: {
    studentId: '',  // 学号
    password: '',   // 密码
    isSubmitting: false,  // 是否正在提交
    openid: '' // 存储openid
  },
  
  onLoad() {
    // 从全局数据获取openid
    const app = getApp()
    if (app.globalData.openid) {
      this.setData({
        openid: app.globalData.openid
      })
    } else {
      // 如果没有openid，可能需要重新获取
      wx.showToast({
        title: '获取用户信息失败，请返回重试',
        icon: 'none'
      })
    }
  },
  
  // 输入学号
  inputStudentId(e) {
    this.setData({
      studentId: e.detail.value
    })
  },
  
  // 输入密码
  inputPassword(e) {
    this.setData({
      password: e.detail.value
    })
  },
  
  // 提交登录表单
  submitLogin() {
    // 表单验证
    if (!this.data.studentId) {
      wx.showToast({
        title: '请输入学号',
        icon: 'none'
      })
      return
    }
    
    if (!this.data.password) {
      wx.showToast({
        title: '请输入密码',
        icon: 'none'
      })
      return
    }
    
    // 检查openid
    if (!this.data.openid) {
      wx.showToast({
        title: '用户信息获取失败，请返回重试',
        icon: 'none'
      })
      return
    }
    
    // 防止重复提交
    if (this.data.isSubmitting) return
    
    this.setData({ isSubmitting: true })
    
    // 调用登录接口
    request.post('/student/login1', {
      studentId: this.data.studentId,
      password: this.data.password,
      openid: this.data.openid
    }, false).then(res => {
      this.setData({ isSubmitting: false })
      
      if (res.code === 0) {
        // 登录成功
        console.log('登录成功', res.data)
        
        // 跳转到一键登录页面
        wx.redirectTo({
          url: '/pages/quickLogin/quickLogin'
        })
      } else {
        // 登录失败
        wx.showToast({
          title: res.message || '登录失败，请检查学号和密码',
          icon: 'none'
        })
      }
    }).catch(err => {
      console.error('登录失败', err)
      this.setData({ isSubmitting: false })
      
      wx.showToast({
        title: '登录失败，请稍后重试',
        icon: 'none'
      })
    })
  }
}) 